package com.lk.ii.mapper;

import java.util.List;
import com.lk.ii.domain.IiActivity;
import org.apache.ibatis.annotations.Param;

/**
 * 活动Mapper接口
 * 
 * @author lk
 * @date 2021-02-05
 */
public interface IiActivityMapper 
{

    public List<IiActivity> getComingActivityList(@Param("startTime") String startTime, @Param("pageSize") Long pageSize, @Param("offset") Long offset);

    /**
     * 查询活动
     * 
     * @param id 活动ID
     * @return 活动
     */
    public IiActivity selectIiActivityById(Long id);

    /**
     * 查询活动列表
     * 
     * @param iiActivity 活动
     * @return 活动集合
     */
    public List<IiActivity> selectIiActivityList(IiActivity iiActivity);

    /**
     * 新增活动
     * 
     * @param iiActivity 活动
     * @return 结果
     */
    public int insertIiActivity(IiActivity iiActivity);

    /**
     * 修改活动
     * 
     * @param iiActivity 活动
     * @return 结果
     */
    public int updateIiActivity(IiActivity iiActivity);

    /**
     * 删除活动
     * 
     * @param id 活动ID
     * @return 结果
     */
    public int deleteIiActivityById(Long id);

    /**
     * 批量删除活动
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteIiActivityByIds(String[] ids);

    /**
     * 本月的查询
     * @param first 本月的第一天
     * @param last 本月的最后一天
     * @return 本月的信息
     */
    public List<IiActivity> selectMonth(@Param("first")String first,@Param("last")String last);


    /**
     * 本周的查询
     * @param weekBegin 本周的第一天
     * @param weekEnd 本周的最后一天
     * @return
     */
    public List<IiActivity> selectWeek(@Param("weekBegin") String weekBegin,@Param("weekEnd")String weekEnd);


    /**
     * 活动状态的查询--已结束
     * @param formatEnd 当前时间
     * @return 已结束
     */
    public List<IiActivity> activeEnd(@Param("formatEnd") String formatEnd);

    /**
     * 活动状态的查询--未开始
     * @param formatStart 当前时间
     * @return 未开始
     */
    public List<IiActivity> activeStart(@Param("formatStart") String formatStart);

    /**
     * 活动状态的查询--报名中
     * @param formatState 当前时间
     * @return 报名中
     */
    public List<IiActivity> activeState(@Param("formatState") String formatState);


}
